Some computers may employ a peripheral component interconnect (PCI) bus to provide data, address, and control paths between components including a microprocessor, memory, and PCI cards. PCI bus drivers, receivers, and control logic may be implemented using PCI controller circuitry. Some PCI controllers may support operation of one or more PCI buses simultaneously (e.g., PCI bridging). A PCI controller may support the insertion and removal of PCI cards while the computer is operating. This process, sometimes known as a “hot swap”, may be implemented using a standard hot plug controller (SHPC). Hardware logic included in devices coupled to a PCI bus, as well as operating system and PCI card software and/or firmware drivers, may cooperatively interact during normal PCI bus operation.
During operation of the computer with one or more PCI buses, hardware logic and/or driver instructions may cause certain bus-related parameters (e.g. bus timing and/or register values) to fall outside of pre-defined normal ranges. Such “operational excursions” may impede cooperation between bus-attached devices, and may cause bus delays, improper PCI card operation, and/or operating system crashes.
For more information regarding PCI bus standards, please refer to “Conventional PCI Specification-Revision 3.0: 2004”, “PCI Express 1.0a Specification”, “PCI-X 2.0a Specification”, “PCI Express to PCI/PCI-X Bridge Specification”, and “Standard Hot Plug Controller 1.0 Specification” prepared by PCI-SIG (Special Interest Group), whose current address is 5440 SW Westgate Dr. Suite 217; Portland, Oreg. 97221.